package xkp.lesson4;

import xkp.lesson2.UserInfo;

import java.util.HashSet;
import java.util.Iterator;
import java.util.TreeSet;

public class TestSetAndMap {
    //ArrayList、LinkeList、HashSet都是Collection体系中的内容
    //1、讲解过ArrayList的底层源码
    //2、讲解过LinkedList底层源码
    //3、HashSet.....
    //3.1 Hash散列表
    //3.2 讲解Hash值的一种生成策略(取余数的方式---常见并且最简单的方式)
    //3.3 通过Hash值的生成策略和明白什么是哈希散列表可以知道，不同的对象可以有相同的哈希值(哈希碰撞)
    //3.4 HashSet的常用方式 add  remove  size  迭代,注意Set中不能存放相同的数据，Set中数据是无序的
    //3.5 HashSet源码分析----到底底层数据如何存储
    //3.6 通过简单的查看源码，发现底层都是使用的HashMap
    //3.7 所以要想搞明白HashSet的底层源码，需要先搞明白HashMap的底层源码
    //3.8 自行联系Set接口中的方法
    //面试题：简述List与Set的区别...

    public static void main(String[] args) {
        HashSet<UserInfo> userInfos = new HashSet<>();
        userInfos.add(new UserInfo());
        userInfos.remove(new UserInfo());
        userInfos.size();
        Iterator<UserInfo> iterator = userInfos.iterator();

    }
}
